Operating Modes of Magnetic Navigation Devices

ABSTRACT

In one embodiment, a method includes collecting, by a magnetic navigation device, magnetic measurements of a particular geographical region in accordance with a position and trajectory of the magnetic navigation device; accessing a global navigation satellite system (GNSS) signal status and a network connection status on the magnetic navigation device; determining an operational mode for the magnetic navigation device based on the GNSS signal status and the network connection status; determining whether to transmit the magnetic measurements to a server or store the magnetic measurements locally on the magnetic navigation device based on the operational mode; and performing navigation or localization operations using the operational mode.

PRIORITY

This application claims the benefit, under 35 U.S.C. § 119(e), of U.S.Provisional Patent Application No. 63/040,352, filed 17 Jun. 2020, whichis incorporated herein by reference, and of U.S. Provisional PatentApplication No. 63/210,411, filed 14 Jun. 2021, which is alsoincorporated herein by reference.

TECHNICAL FIELD

This disclosure generally relates to magnetic mapping and navigation.

BACKGROUND

Navigation systems come in a variety of different architectures for usein different applications, including personal, commercial, and military.Many such systems operate on the premise of a Global NavigationSatellite System (GNSS). GNSS is a general term used to describe anetwork of satellites that can be used to produce position, navigation,and time (PNT) data sets. The Global Positioning System (GPS) is awidely used form of GNSS. Regional applications of such systems are alsoused to generate more regionally specific PNT data. For example, Galileocan be used in Europe; GLONASS can be used in Russia; and the BeiDouNavigation Satellite System (BDS) can be used in China.

GNSSs can have failure points. For example, some GNSSs lose reliabilitywhen operated inside buildings or in areas where network communicationto the device is intermittent. Some GNSSs lose reliability when operatedin dense city environments where large buildings interfere withcommunication signals. Some GNSSs lose reliability when operated inareas such as caves, tunnels, and mountains that impede locationdevices' reception of signals from GNSS satellites. Moreover, some GNSSsare susceptible to malicious attacks by electronic interference orphysical intervention that degrade their reliability.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A illustrates an example magnetic navigation system.

FIG. 1B illustrates an example magnetic navigation device.

FIG. 2 is an example sequence diagram for an example magnetic navigationsystem.

FIG. 3 illustrates an example method for generating example magneticmapping data.

FIG. 4A is an example time overlay of various example magnetic profilesin an example region.

FIGS. 4B and 4C illustrate an example comparison between examplequantized trajectory data for example sensor and mapping data.

FIGS. 4D-4I illustrate example trajectory data compared for similaritiesfor improved functionality.

FIG. 5 illustrates example magnetic measurement information over time.

FIG. 6 illustrates example magnetic intensity and location data.

FIG. 7 illustrates an example regional overlap data set of examplemagnetic intensity and location information.

FIG. 8 illustrates an example data transmission scenario.

FIG. 9 illustrates an example process for updating example geomagneticmap information.

FIG. 10 illustrates an example process for communicating with an examplemagnetic navigation system.

FIG. 11 illustrates an example process for transmitting example magneticmeasurement information to an example magnetic navigation system basedon available localization information or network connectivity.

FIG. 12 illustrates an example method for transmitting example magneticmeasurement information to an example magnetic navigation system.

FIG. 13 illustrates an example method for navigating based on availablelocalization and network connectivity.

FIGS. 14A-14D illustrate example magnetic data for improved indoorlocalization.

FIG. 15 illustrates example repetitive reliable magnetic mapping datagathered on an example course over multiple days.

FIG. 16 illustrates an example computer system.

DESCRIPTION OF EXAMPLE EMBODIMENTS

In particular embodiments, magnetic measurements are used to performlocalization or navigation based upon geomagnetic map information. Inparticular embodiments, localization or mapping is performed solelybased upon magnetic measurements. In particular embodiments,localization or mapping is performed based upon a combination ofmagnetic measurements and additional localization information including(but not limited to) GNSS data or measurements made by inertialmeasurement units. In particular embodiments, magnetic measurements madeby magnetic navigation devices are utilized to create and continuouslyupdate geomagnetic map information. In this way, accurate geomagneticmaps that are updated in response to changes in an environment can bemade available within the magnetic navigation system.

GNSSs can be effective at providing navigational data, including mapsand directions for navigation, in a variety of applications. However,GNSSs are not without their faults and are susceptible to reliabilityissues when there are interferences in the signals used to performlocalization, e.g., local anomalies such as buildings or othergeographical topography. Furthermore, GNSS based navigation systems canbe susceptible to attacks from malicious actors that can result incomplete loss of function or lead to spurious localization results.

When reliability of a GNSS is an issue, navigational data are oftenobtained by a secondary set of instruments such as Inertial NavigationSystems (INS). INS uses a combination of mechanical or electromechanicalsystems to calculate the position, orientation, and velocity of a movingobject. For example, some systems may use computer systems, motionsensors, and rotational sensors to calculate, by dead reckoning, theposition, orientation and velocity of a navigation device. This can bedone without the use of external references such as a GNSS. However,inertial systems accumulate navigational errors that can lead toincorrect data if not periodically corrected using accurate positiondata.

The Earth's geomagnetic field (GMF) can be utilized to determinelocation. The Earth's GMF is locally unique and can depend on a numberof factors including magnetic anomalies, artificial electromagneticfields, or seasonal or diurnal variations. An impediment to the use oflocal GMF information to perform localization or navigation has been thegeneral lack of availability of high resolution GMF maps. In fact, thecurrent existing maps, based on GMF, are typically only capable ofproviding what is known as a 2-arc minute resolution. This equates tomeasurements with an approximately 3.6 km resolution, which can bedifficult to use for precise localization and navigation purposes,especially in short ranges such as urban environments. Accordingly,magnetic navigation systems in particular embodiments can utilizemeasurements obtained via variety of different magnetic navigationdevices to construct geomagnetic maps with sufficient resolution toprovide localization with sufficient accuracy to enhance thelocalization or navigation that can be performed using GNSS alone andGNSS in combination with other sensing modalities including (but notlimited to) inertial measurement unit.

Turning now to the drawings, navigation systems and methods that utilizemagnetic map data in combination with GNSS data to perform localizationor navigation in particular embodiments are illustrated. In particularembodiments, the use of magnetic measurements to obtain localizationinformation from magnetic maps in combination with localizationinformation from a GNSS can increase the reliability of a navigationsystem or provide additional functionality including (but not limitedto) reliable indoor navigation or reliable navigation in environmentswhere the navigation device is likely to be at least partially occludedfrom GNSS satellites (e.g. dense urban environments). In particularembodiments, the navigation system utilizes a main mapping server thatis designed to maintain a current geomagnetic map of at least a portionof the earth where the geomagnetic map can include information from thecurrent Geo Magnetic Field (GMF) as well as updated information obtainedfrom magnetic navigation devices. In particular embodiments, thenavigation system can also incorporate regional data servers (alsointerchangeably herein referred to as regional magnetic data services,regional mapping servers, regional navigational servers, regionalservers) that communicate with the main mapping server and providemagnetic mapping data collected based upon measurements made by magneticnavigation devices. In particular embodiments, the magnetic mapping datathat are provided by the regional mapping servers can be in the form ofa patch data set. The specific data that are forwarded are largelydependent upon the magnetic measurement capabilities of the magneticnavigation devices, the processing performed by the regional servers, orthe requirements of specific navigation applications. In certainembodiments, the main navigation or mapping server can utilize datareceived from regional navigation servers to create magnetic maps(consisting of various layers of magnetic and other data), updateexisting geomagnetic maps and refine the geomagnetic maps based on thereceived data (e.g. magnetic navigation device measurement data or dataderived from magnetic navigation device measurement data including (butnot limited to) a geomagnetic map patch data set). In particularembodiments, the regional servers receive data from individual magneticnavigation devices located within a specific region.

In particular embodiments, the data sets from the devices can carry avariety of information including (but not limited to) information withinthe region and local magnetic anomaly data. The regional data serverscan process the data received from magnetic navigation devices tocontinuously update and refine local geomagnetic map data or geomagneticmap patch data sets. In particular embodiments, the regional servers canapply a weighting to each data set received from a magnetic navigationdevice based on factors including (but not limited to) the reliabilityand accuracy of the hardware used and localization (GNSS) data reportedby the magnetic navigation device. In particular embodiments, regionaldata servers can generate updated geomagnetic map patch data sets (orpatch data sets) based on data received from magnetic navigation devicesover a period of time. In certain embodiments, the updated patch datasets can be generated based upon comparison with similar probabilisticdata thus providing an improved and refined data set to update globalgeomagnetic map data utilized by the magnetic navigation system. Thespecific manner in which the geomagnetic maps or the servers thatdetermine the manner in which the geomagnetic maps should be updated arelargely dependent upon the requirements of specific navigationapplications.

In particular embodiments, the navigation systems can continuouslygenerate updated geomagnetic mapping data for use by magnetic navigationdevices to perform localization or navigation. Such systems can providereliable geomagnetic mapping data based on relatively stable GMF as wellas improved resolution of data based on magnetic measurements obtainedby individual navigation devices. In this way, navigation systems inparticular embodiments can provide reliable geomagnetic map informationand can utilize this information to provide more reliable localizationand mapping services when compared to traditional navigation systemsthat rely upon GNSS alone. Furthermore, the geomagnetic maps can beregularly updated with increasingly accurate information as increasingnumbers of magnetic navigation devices obtain field measurements andtransmit new information to the system's servers.

Magnetic navigation systems, methods of performing localization ornavigation based upon magnetic measurements using geomagnetic maps, andmagnetic navigation devices in particular embodiments are discussedfurther below. FIG. 1A illustrates an example magnetic navigation systemin which magnetic navigation devices utilize geomagnetic map informationto perform localization or navigation, where the geomagnetic mapinformation is updated based upon magnetic measurement made by themagnetic navigation devices. In particular embodiments, a magneticnavigation system 100 can provide location or navigation services withinone or more geographic regions (102-108). At any given time, a varietyof magnetic navigation devices (110) may be present within each of theregions (102-108). Examples of magnetic navigation devices 110 caninclude (but are not limited to) mobile phones, vehicle navigationsystems, UAV navigation systems, or any other devices capable ofreceiving geomagnetic map information, capturing magnetic measurementsor transmitting information based upon the magnetic measurements. Thecharacteristics of magnetic navigation devices are only limited by therequirements of specific applications.

Many magnetic navigation devices are capable of communicating withvarious servers including (but not limited to) servers within themagnetic navigation system via a cellular data or satellite datacommunication network. While much of the discussion that followsreferences magnetic navigation devices that have network connectivityand retrieve data from remote servers, magnetic navigation devices inparticular embodiments store the geomagnetic map information oradditional map information required to render UIs in memory on themagnetic navigation device and are able perform localization ornavigation in the absence of network connectivity. Where networkconnectivity is available, magnetic navigation devices in particularembodiments can receive data including (but not limited to) geomagneticmap information, UI map information (e.g. map tiles that can bedisplayed within a location or mapping UI), or navigation information(e.g. route information, or turn by turn directions) via the networkconnection. In particular embodiments, a single server system providesgeomagnetic map information in combination with other map information.For example, geomagnetic map information can be provided as a layer ofmap information that includes (but is not limited to) visual mapinformation that can be displayed within a UI. In particularembodiments, geomagnetic map information is obtained from differentservers to the servers that provide UI map information or navigationinformation. In particular embodiments, magnetic navigation devicesaccess map or navigation information via a unified interface andspecific pieces of information are retrieved from a variety of serversor database systems within the magnetic navigation system and providedto the magnetic navigation device via the unified interface. Specificserver architectures that can be utilized in magnetic navigation systemin particular embodiments are discussed further below with reference tothe regional server systems 112 and main server system 116 shown in FIG.1A. Many other server architectures can be utilized within magneticnavigation systems as appropriate to the requirements of specificapplications in particular embodiments.

In particular embodiments, the magnetic navigation system incorporatesone or more regional server systems 112 that can communicate withmagnetic navigation devices that communicate via a specific network orwithin a specific geographic region. The regional server systems cantransmit geomagnetic map data 114 to magnetic navigation devices 110within a geographic region (102-108) and receive magnetic measurementinformation. As noted above, the regional server systems 112 can alsotransmit other types of information including (but not limited to) UImap information, or navigation information.

In particular embodiments, magnetic navigation devices 110 cancontinuously provide magnetic measurement information to the magneticnavigation system 100 (e.g. to regional server systems 112 or a mainserver system 116). In particular embodiments, magnetic navigationdevices 110 periodically provide data logs of magnetic measurementinformation. In certain embodiments, magnetic navigation devices 110report magnetic measurements based upon network connectivity. Forexample, a magnetic navigation device 110 may wait until connected to abroadband Internet connection (e.g. via a WIFI access point) to uploadmagnetic measurement data logs to server systems (112 or 116) within amagnetic navigation system 100. The specific manner in which data areexchanged between magnetic navigation devices and servers within amagnetic navigation system is largely dependent upon the requirements ofspecific applications.

FIG. 1B illustrates an example magnetic navigation device. The magneticnavigation device 150 includes a processing system 152 in communicationwith a memory 154 containing a magnetic navigation application 155. Theprocessing system can be implemented using a general purposemicroprocessor, a microcontroller, a digital signal processor, agraphics processing unit, or any combination of application specific orsoftware-controlled devices capable of performing logic operations orcomputations. In particular embodiments, the memory 154 includes anon-volatile memory system. In certain embodiments, the magneticnavigation application 155 is temporarily downloaded and stored inmemory 154. In particular embodiments, the memory 154 can also beutilized to store additional data including (but not limited to)geomagnetic map information, UI map information (e.g. map tile imagefiles), or navigation information. As noted above, magnetic navigationdevices in particular embodiments can locally store map information toenable magnetic navigation in the absence of a network connection.

The processing system 152 is also in communication with a magneticsensor system 156. In the illustrated embodiment, the magneticnavigation device also includes a GNSS receiver 158, an inertialmeasurement unit (IMU) 160, and a wireless communication module 162 incommunication with the processor 152. In particular embodiments, GNSSreceiver 158, IMU 160, or wireless communication module 162 can beutilized to obtain location information that can be utilized by themagnetic navigation application 155 in combination with or as analternative to location information derived from magnetic measurementsobtained using the magnetic sensor system 156. In particularembodiments, the wireless communication module 162 can also be utilizedto obtain supplemental location information. The wireless communicationmodule 162 can also be utilized to communicate with server systemswithin the magnetic navigation system to obtain geomagnetic mapsinformation or transmit data related to magnetic measurements. Whilevarious magnetic navigation device architectures are described abovewith reference to FIG. 1B, any of a variety of architectures can beutilized including (but not limited to) architectures in which the GNSSreceiver or wireless communication module perform the functionsattributed above to a separate processor or memory (hence eliminatingthe need for a separate processing system or memory component).Accordingly, many different magnetic navigation device implementationscan be utilized including fewer components or additional components tothe components shown in FIG. 1B as appropriate to the requirements ofspecific applications in particular embodiments.

Referring again to FIG. 1A, in particular embodiments, the regional dataservers 112 can be configured to accumulate transmitted magneticmeasurement information 114 received from magnetic navigation devices110. The accumulated magnetic measurement data can be used to generateupdated geomagnetic map information for specific regions. The regionaldata servers 112 can then transmit geomagnetic map updates (e.g. updatedgeomagnetic map patches) to a main server system or multiple serversystems located in geographically disparate data centers, where thegeomagnetic map updates can be utilized to perform updates with respectto a global geomagnetic map. The specific manner in which magneticmeasurements sourced from multiple magnetic navigation devices can beutilized within a single server system or within a hierarchy of serversystems to update regional or global geomagnetic maps is largelydependent upon the requirements of specific applications in particularembodiments. Processes for collecting magnetic measurements and updatinggeomagnetic maps in particular embodiments are discussed further below.

In particular embodiments, the magnetic navigation system can “patch” orimprove a global geomagnetic map of the GMF. For example, magneticnavigation servers (e.g. a main server system 116) can maintain ageomagnetic map that may be a dual redundant “master map” of the GMF ofthe globe to avoid interruption of the service in the case of acorrupted master file. The master geomagnetic map can serve as abaseline from which to establish higher resolution geomagnetic maps thatcan be used for detailed magnetic navigation. In particular embodiments,the master geomagnetic map stored in, for example, one or all of themain servers of the magnetic navigation system can be based on datareceived from an EMAG2 (Earth Magnetic Anomaly Grid 2-arc minuteresolution) data model. Additionally, the master geomagnetic map maycontain layers of additional data that contain rough gradient maps ofthe GMF as well as other information such as susceptibility andconductivity. In particular embodiments, the various layers ofadditional data can be updated periodically or in real time asinformation is generated from magnetic navigation devices and fed intothe regional servers. Likewise, the master geomagnetic map, inparticular embodiments, can be updated or improved to have a greaterresolution than the baseline EMAG2 model. Accordingly, the mastergeomagnetic map, as updated, can be used for improved localization ornavigation.

In particular embodiments, the magnetic mapping data can be provided inmultiple layers of two dimensional data based on height of the magneticdevice. For example, some devices may be in aerial vehicles while othersare closer to the ground, while still other devices may be locatedwithin buildings at different heights. Accordingly, various embodimentsof the system programming can extrapolate the two dimensional data setsto render a three dimensional data set in order to generate a morerefined three dimensional map of magnetic anomalies. Accordingly,three-dimensional data sets can be stored in the main server. Likewise,some embodiments may utilize the three dimensional data set forlocalization.

Updating of global geomagnetic maps in particular embodiments involvescapturing magnetic measurement information using magnetic navigationdevices active within the magnetic navigation system. In particularembodiments, magnetic measurement information can be generated bymagnetic navigation devices and stored or provided to the magneticnavigation system in a number of different formats including (but notlimited to) decimal data, TINYINT (tiny integer), or integer dataformats. Likewise, the values of the data can be provided in any numberof value types such as degrees (e.g. representing latitude and longitudevalues), and metric or English measurement systems to represent therespective resolutions or cell sizes. It should be understood that thecombination of such values can be used to generate magnetic informationcapture trajectories, which can be referred to simply as trajectories,for each of the individual magnetic navigation devices that areoperational within the magnetic navigation system or capturing magneticmeasurement information for use within the magnetic navigation system.In some embodiments, the trajectories can be provided to the magneticnavigation system by the magnetic navigation devices using a variety ofdifferent data formats or values. For example, Table 1 below illustratestrajectory data generated in particular embodiments.

TABLE 1 Name of data field Data description Data value Data formatDevice_ID Unique device id 15-digit number CHAR(15) (IMSI)TIME_STAMP_BEGIN stamp of the start of the ‘1970-01-01 TIMESTAMPtrajectory 00:00:00’ UTC Device_TYPE (CAR, PEDESTRIAN, enum TINYINTDRONE, etc.) EQUIPMENT Magnetometer type string VARCHAR TRAJECTORYTrajectory Binary VARBINARY(MAX) presentation of the trajectoryThe TRAJECTORY data structure can be implemented in the manner detailedbelow:

TRAJECTORY: array of elements of the “POINT” type. POINT: { double lat;double Ion; float height; float heading; // magnetic heading time _ttimestamp; // timestamp of the current measurement doubleaccelerometerX; double accelerometerY; double accelerometerZ; doublemag_x; double mag_y; double mag_z; double suscept; double conductivity;float v_accuracy; // GNSS Vertical Accuracy(m); -1 if unavailable floath_accuracy; // GNSS HorizontalAccuracy(m) -1 if unavailable short mode;// 0 − regular mode; 1 − GNSS-denied mode; 2 − Network-denied mode; 3 −blind mode. };

Any of a variety of data structures can be utilized for reportingmagnetic measurements as appropriate to the requirements of specificapplications in particular embodiments.

In particular embodiments, magnetic measurement information directlyreported by magnetic navigation devices or contained within trajectoriesreported by magnetic navigation devices can be used to update a baselinemagnetic map that can include data parsed from the EMAG2 data set. EMAG2data can be used as a baseline for determining the level of resolutionthat may be needed to improve functionality of the overall magneticmapping system. For example, the level of possible resolutionimprovement can be determined by the localization accuracy of GNSSdevice data and the update rate of magnetic sensors specific to eachdevice in the system.

In particular embodiments, the data of key relevance can include (but isnot limited to) the magnetic data related to latitude, longitude, height(altitude), and device type. The rough layer data, in particularembodiments can contain various values or data sets related to thegeographic location of the device. This can be extremely useful indetermining the types of magnetic anomalies that may be already knownand accounted for in the overall resolution improvement. Additionally,susceptibility and conductivity data can be generated by the deviceswithin the region. Such data can be used to establish the various trustcoefficients associated with each device. Trust coefficients can act, inparticular embodiments, as a weighted coefficient that can helpdetermine the level of accuracy of the data being provided andsubsequently used to determine the trajectory data for the device.

As discussed previously with respect to FIG. 1A, the regional serverscan be used to pre-process the magnetic measurement information providedby magnetic navigation devices. In particular embodiments, the magneticnavigation system may utilize the regional servers to generate updatesfor regions or “patches” of data for a global geomagnetic map. Theupdates can be implemented as additional layers of data or using any ofa variety of data structures reflecting the modifications to theunderlying global geomagnetic map information. In particularembodiments, regional servers can create geomagnetic map patches for amaster geomagnetic map based upon trajectories that can be generallycategorized by device type and device hardware. For example, themagnetic navigation system can weigh the reliability of information(e.g. magnetic measurements by a cellular phone versus a vehicle mountedmagnetic navigation device), based upon factors including (but notlimited to) the sensitivity or reliability of the magnetometers utilizedby the magnetic device, or the reliability of other positioninginformation generated by the magnetic navigation device. The differentdevice trajectories can be collected by the various regional servers 112and the magnetic measurement information contained within thetrajectories can be processed by the regional servers to create ageomagnetic map patch for use in the updating of a global geomagneticmap. The geomagnetic map patches can be transmitted to a main serversystem to update the global geomagnetic map.

While much of the discussion above relates to the use of trajectories toprovide magnetic measurement information for the purpose of updatingglobal geomagnetic maps, methods based upon transmitting trajectory dataare simply implementations that can be useful because they do not relyon the need for continuous transmission of magnetic measurementinformation by magnetic navigation devices. As such, use of trajectoriescan enable magnetic navigation systems to aggregate magnetic navigationdata at advantageous times (e.g. when low cost/high speed networkconnectivity is available to magnetic navigation device). Accordingly,magnetic measurement information can be provided using any of a varietyof different data structures or at any of a variety of communicationfrequencies as appropriate to the requirements of specific applicationsin particular embodiments.

FIG. 2 is an example sequence diagram for an example magnetic navigationsystem, conceptually illustrating communication between a magneticnavigation device and server systems within a magnetic navigation systemin particular embodiments. In particular embodiments, a magneticnavigation device 202 can be configured to communicate wirelessly with aregional server 204. In particular embodiments, the magnetic navigationdevice 202 can transmit magnetic mapping information 206 generated fromthe device to the regional server 204. The regional server 204 canperform a number of operations as will be discussed below to analyze andprocess the incoming data from magnetic navigation devices to generateupdates to geomagnetic maps. In the illustrated embodiment, the magneticmeasurement information received from magnetic navigation devices isutilized to generate a geomagnetic map patch data set that can betransmitted 208 to a main server 210 to be used in updating a globalgeomagnetic map. As discussed above, updates to the global geomagneticmap can take the form of an additional layer of information within theglobal geomagnetic map. In particular embodiments, the main server 210can transmit updated geomagnetic map data 212 to a regional server forstorage and distribution to magnetic navigation devices. When themagnetic navigation device 202 next requests 214 geomagnetic map data toperform navigation, updated geomagnetic map files 216 can be provided bythe server 204 and utilized by the magnetic navigation device to performlocalization or navigation. Geomagnetic map information can be regionspecific. Therefore, the magnetic navigation device 202 need not requestthe full global geomagnetic map, but can instead requests geomagneticmap cubes or tiles for specific regions. For example, many magneticdevices may have varying degrees of uncertainty that may require twodimensional or three dimensional data for localization/navigation. If amagnetic device is located on or under a bridge then three dimensionalGMF information can be provided in cube to allow for navigation. Otherexamples may include a vehicle on a roadway that may not need anythingmore than two dimensional data for localization and would thus beprovided with tiles. In particular embodiments, the magnetic navigationdevice can download UI map tiles 216 to allow for the magneticnavigation device to display an appropriate UI as it continues along atrajectory.

FIG. 3 illustrates an example method for generating example magneticmapping data. In particular embodiments, a magnetic navigation devicecaptures 302 magnetic measurements using magnetometers present on thedevice. The measurements made by the magnetic navigation device arespecific to the magnetic navigation device in the sense that they aredependent upon the location of the magnetic navigation device and thespecific magnetometers employed by the magnetic navigation device. Inparticular embodiments, each magnetic measurement made by a magneticnavigation device includes (but is not limited to) three components ofmagnetic field strength that are measured together with localization andattitude data from a GNSS/INS or any reliable navigation system. Inparticular embodiments, the localization information can be supplementedwith additional localization data including (but not limited to)localization information derived from measurements within a digitalcommunication system or IMU measurements. In certain embodiments,magnetic measurements, together with information including (but notlimited to) navigation log data and magnetic navigation device type,sensor type or accuracy of localization information can be transmittedand stored by the navigation system (e.g. in the regional servers) foruse in calculating updates to a global geomagnetic map. In particularembodiments, the magnetic measurement information can be illustrated byequation 1 below:

H=[H _(x) H _(y) H _(z)]=f(t,x,y,z,x•,y•,z•,ϕ,θ,ψ,ms)  (1)

where t is time, (x, y, z) and (x•, y•, z•) are the coordinates andvelocities given in ENU/NED coordinate system already transformed to thegiven region by the servers, (ϕ, θ, ψ) are roll, pitch, and yaw angles,ms is a message status. Any of a variety of magnetic measurementinformation formats can be utilized (including different formats fordifferent devices) as appropriate to the requirements of specificapplications in particular embodiments.

In particular embodiments, magnetic measurement information generated bya specific magnetic navigation device can include a variety of differentelements including, as described above, information identifying thedevice hardware utilized to capture the measurements as well as thereliability of such hardware. Additionally, regional device specificdata can take into account other variables, such as (but not limited to)local anomalies, that can affect the regional magnetic field. Anomaliescan be any number of objects that can provide information of the localmagnetic field such as buildings, bridges, tunnels, cell towers,lampposts, any number of man-made objects, or any geographical featuresthat may be unique to the region.

Magnetic measurement information generated by a specific magneticnavigation device can be transmitted to a regional server for furtherprocessing 304. The regional server can generate regional trajectories306 based on the regional device specific data. Alternatively, themagnetic navigation devices can provide magnetic measurement informationas trajectories. In particular embodiments, the magnetic measurementscan then be used to generate regional geomagnetic map patches 308 thatcan be transmitted to a main server system 310. The main server can usethe geomagnetic map patches to update a global geomagnetic map 312 withthe patches received from the regional servers. As noted above, theseupdates can be reflected as additional layers of the global geomagneticmap maintained by the main server system.

In reference to the magnetic measurements or local anomaly data that canbe collected by the variety of regional devices, such data can beassigned by different trust or confidence levels that can be used in theoverall calculation of the geomagnetic map patch data. Trust orconfidence levels, in various embodiments, can be referred to asprobabilistic layers and can be calculated based on the number ofmagnetic navigation devices that reported the anomaly, repeatability ofmeasurements across different magnetic navigation devices, the accuracyand types of magnetometers used to collect the magnetic measurements,whether the magnetometer is a recognized device, motion type, orreliability of localization (GNSS data) as well as seasonal variationsthat can affect the local magnetic field. Additionally, probabilisticlayers can contain other types of information such as informationdescribing known local anomalies including (but not limited to)materials present within known local anomalies. Materials can havevarious effects on the characteristics of a local magnetic field. Localanomalies such as buildings, bridges, roads, etc. can be made from anynumber of materials. Additionally, such anomalies and their respectivematerials can relate to the relative susceptibility and conductivityinformation seen by devices. Accordingly, databases can be establishedor utilized that include the known magnetic properties of various typesof materials such that corrections to magnetometers can be made and orincluded in the corresponding calculations for generating geomagneticmap patches utilized in the updating of a global geomagnetic map. Inparticular embodiments, the data can be filtered into various types ofprobabilistic layers such as device susceptibility and conductivitydata. In various embodiments, the probabilistic layers can include butare not limited to device or object coordinates, values vectors for thelocal magnetic field, gradient vectors for the local magnetic field,magnetic susceptibility values, electrical conductivity values, andmagnetic navigation device type layers.

In particular embodiments, geomagnetic maps are created using a varietyof magnetic navigation device measurements including measurements madevia a more precise measurement platform of sensors and measurements madeusing less expensive sensors. For example, some magnetic navigationdevices may contain GNSS and INS solutions, Novatel Synchronous Positionelements, Attitude and Navigation (SPAN) technology, such as PwrPak7-E1.These magnetic navigation devices may be capable of providing time,position, velocity, and attitude parameters. In particular embodiments,magnetic measurements obtained by magnetic navigation devices that havemore reliable magnetic measurement platforms are accorded a higher levelof trust (or confidence) within the probabilistic layers utilized todetermine updates to a global geomagnetic map. In contrast, magneticnavigation devices with less accurate components and technologies may beafforded a lower trust level. The less accurate components, such asmagnetometers in cellular devices, can be relatively reliable forlocalization and navigation despite the level of noise that can beproduced by some of these less accurate sensors.

Magnetic navigation systems in particular embodiments can utilize alarger number of magnetic measurements captured using less precisemagnetic sensors or localization techniques to build highly reliable andaccurate geomagnetic maps with improved resolution. For example, manyembodiments can capitalize on the errors or noise that is often producedfrom less accurate sensors because similar sensors tend to produce thesame or similar errors which make them very predictable. Accordingly,the sensor data, including the errors, can be used for generating roughmapping data as well as for localization on a rough scale; where roughis inclusive of data containing the known errors or noise. Thecollection of many magnetic measurements from the same or similar typesof noisy sensors to represent the rough map can be useful in developingpatches for the global geomagnetic map by utilizing processes including(but not limited to) quantization of GMF gradient values. While much ofthe discussion above relates to the use of magnetic navigation devicesto gather magnetic measurements, magnetic navigation systems inparticular embodiments can also receive magnetic measurements fromdedicated magnetic measurement devices that incorporate very precisegeolocation and magnetic field measurement technologies. In this way,the magnetic navigation system can periodically capture extremelyprecise magnetic measurements within specific regions to continuouslyimprove upon the global geomagnetic map information available tomagnetic navigation devices. Accordingly, references to obtainingmagnetic measurements using magnetic navigation devices herein should beunderstood as encompassing obtaining measurements using dedicatedmagnetic measurement devices that also form part of the magneticnavigation system. Any of a variety of strategies can be employed forgathering magnetic measurements and processing the magnetic measurementinformation to generate reliable geomagnetic map information for use inlocalization or navigation as appropriate to the requirements ofspecific applications in particular embodiments.

In particular embodiments, methods of updating a global geomagnetic mapcan follow a systematic process of obtaining magnetic measurementinformation from magnetic navigation devices in a region and thenassigning the magnetic measurement information to a probabilistic layerfor processing. Furthermore, probabilistic layers can be compared forsimilarities in magnetic measurement information to generate an overlayof magnetic measurement information useful in generating updatedgeomagnetic map patches. Magnetic measurements, similar to thosediscussed above, can be saved and accumulated in a (distributed) database so that they are available for use in the generation of updates toa global geomagnetic map. In particular embodiments, probabilisticlayers or magnetic measurement data sets can be compared over time. Inother words, magnetic measurements in a region over time can be comparedin order to establish a reliable set of data useful for producingupdates to a global geomagnetic map. Magnetic measurements that takeinto account the change in data over time can be illustrated by equation2 below:

M=[Hx(t1) . . . Hx(tN)Hy(t1) . . . Hy(tN)Hz(t1) . . . Hz(tN)]  (2)

where three-dimensional components of GMF are measured over timeintervals t1 . . . tN. The magnetic measurements (consecutive readingsof magnetometers) are dependent on the object's motion, which can becharacterized by three linear velocity components Δx, Δy, Δz, threeangular rate components Δγ, Δθ, Δψ and the update rate of the sensorsystem utilized to capture the magnetic measurements Δt=Δti−Δti−1.

FIG. 4A is an example time overlay of various example magnetic profilesin an example region, conceptually illustrating capture of magneticmeasurements over different time intervals in a given region. During afirst-time interval 402, two magnetic navigation devices capturemagnetic measurements while traversing two different paths within thesame region of the GMF. Within second- and third-time intervals (404 and406), additional magnetic navigation devices capture magneticmeasurements while moving through the region. Magnetic measurements madewithin a cell 408 of the region at different times are indicated. Giventhe uncertainty of the location or trajectories of the magneticnavigation devices, subsequent processing of the magnetic measurementscan account for uncertainty both with respect to the magneticmeasurements and the locations of the magnetic navigation devices at thepoints in time at which the magnetic measurements were made. For thepurposes of processing, each magnetic measurement can be assigned to acorresponding resolution cell within the region (e.g. the cell mostlikely to contain the location of the magnetic navigation device at thetime at which the magnetic measurement was made). The GMF in thecorresponding cell can be a function of 3D coordinates similar to thoseillustrated in equation 2 above. The 3D coordinates can be illustratedby equation 3:

GMF(Hx,Hy,Hz)=f(x,y,z)  (3)

The determined spatial field can be replaced by a set of randomtrajectories; namely magnetic profiles, which are in turn functions ofan object's motion and illustrated in equation 4 below:

M(Hx,Hy,Hz)=m(Δx,Δy,Δz,Δγ,Δθ,Δψ,Δt)  (4)

In particular embodiments, equations 3 and 4 above can be convolved tocontain the change in time Δt that can be associated with probabilisticestimates of coordinates, velocities, and orientations during mapping byusing techniques such as (but not limited to) Gaussian Processregression (GPR). In some embodiments, the magnetic measurements thatare collected by the various magnetic navigation devices within a regioncan be fitted to the same time interval and compared using approximatecoordinates. In particular embodiments, this is performed in a mannerthat accounts for potential errors or noise that could be generated fromany given instrument. Accordingly, navigation systems in particularembodiments can utilize the collected magnetic measurement informationto determine a magnetic gradient field utilizing the matrix provided inequation 5 below:

$\begin{matrix}{\begin{bmatrix}{{{H_{x}\left( t_{2} \right)} - {{H_{x}\left( t_{1} \right)}\mspace{14mu}\ldots\mspace{14mu}{H_{x}\left( t_{N} \right)}} - {H_{x}\left( t_{N - 1} \right)}}\mspace{14mu}} \\{{H_{y}\left( t_{2} \right)} - {{H_{y}\left( t_{1} \right)}\mspace{14mu}\ldots\mspace{14mu}{H_{y}\left( t_{N} \right)}} - {H_{y}\left( t_{N - 1} \right)}} \\{{H_{z}\left( t_{2} \right)} - {{H_{z}\left( t_{1} \right)}\mspace{14mu}\ldots\mspace{14mu}{H_{z}\left( t_{N} \right)}} - {H_{z}\left( t_{N - 1} \right)}}\end{bmatrix} = \begin{bmatrix}{\Delta\; H_{x\; 1}\mspace{14mu}\ldots\mspace{14mu}\Delta\; H_{{x\; N} - 1}} \\{\Delta\; H_{y\; 1}\mspace{14mu}\ldots\mspace{14mu}\Delta\; H_{{y\; N} - 1}} \\{\Delta\; H_{z\; 1}\mspace{14mu}\ldots\mspace{14mu}\Delta\; H_{{z\; N} - 1}}\end{bmatrix}} & (5)\end{matrix}$

Moreover, magnetic measurements can be transitioned from a previousmeasurement to a new measurement with interpolation of mapping data andthe prediction of Δx, Δy, Δz. When multiple magnetic measurementscaptured by different magnetic navigation devices are available within aregion, analysis can be performed to evaluate the similarities betweenmagnetic measurements such as (but not limited to) through the use ofcorrelation analysis. Accordingly, navigation systems in particularembodiments can utilize similarities between magnetic measurements toconstruct probabilistic magnetic gradient maps or geomagnetic mappatches to be used to update a global geomagnetic map. A probabilisticmagnetic field map, according to many embodiments, can combineinformation from a global reference database and gradient vector(three-axis) geomagnetic map data to improve resolution. In particularembodiments, analysis such as (but not limited to) similaritycorrelation analysis can be repeated over time to update a probabilisticmagnetic gradient map. The correlation of similarities in magneticmeasurements is in stark contrast to typical GPS/GNSS methods, whichlook for differences in measurements to improve accuracy.

For example. FIGS. 4B and 4C illustrate an example comparison betweenexample quantized trajectory data for example sensor and mapping data,showing an example of gradient magnetic mapping data of a sensor with aknown error (FIG. 4B) as compared with similar values that may be savedto a map (FIG. 4C). In FIG. 4B, graph 414 shows raw data from sensor andgraph 418 shows corresponding quantized data. Similarly, in FIG. 4C,graph 416 shows raw data on GMF gradient taken from a map along thelinear coordinate X (in meters) and graph 420 contains the same data butquantized. The quantized data can be broken into different quantizationlevels 412, e.g. as illustrated by the horizontal lines in graphs 418and 420. Quantization levels 412 can be used to illustrate a quantizedtrajectory for the respective sensor 414 and the map 416. It can be seenthat gradient profile 410 b extracted from graph 416 differs fromgradient profile 410 a from sensor 414 by scale, since the form ispreserved. The correspondence between gradient profiles 410 a and 410 bcan be detected and, thus, reliable navigation can be provided.Traditional systems may operate by using error metrics which wouldcompare the absolute or squared differences in the quantized trajectorydata would fail at providing matching data sets from which to generateimproved magnetic mapping data. In contrast, many embodiments, operateto compare the trajectory data for similarities rather than differences.In some instances, the error metrics can be bounded by 1 (100%) and canprovide comparison data results much faster and with greater accuracythan traditional methods of differences.

FIGS. 4D-4I illustrate example trajectory data compared for similaritiesfor improved functionality, showing how some embodiments may usesimilarities in trajectory data for localization purposes. FIG. 4D, forexample, illustrates a simulated scalar magnetic field map with variousmagnetic anomalies 420 represented by the peaks and valleys in the “Z”direction of the map. FIG. 4E likewise illustrates a two dimensionalmagnetic anomaly map of the same 100×100 square and illustrates therespective intensities of the various anomalies. Using the data fromrespective magnetic maps, various embodiments can generate gradientmapping data for the respective area as illustrated in FIG. 4F.Simultaneously, a trajectory for any given magnetic device can begenerated based on the numerous methods and embodiments illustratedabove. An example of a magnetic trajectory and its gradient of an objectwithin an area can be illustrated by the graph in FIG. 4G. Subsequently,many embodiments can then make an overlay comparison between the datatrajectories measured by the magnetic device (FIG. 4G) and the map data(FIGS. 4D-4F) which can be illustrated in FIGS. 4H and 4I, where thevalues of Normalized Correlation Coefficients (NCC) are shown as theresult of comparison of known trajectory with a set of others from themap data (FIGS. 4D-4F). The comparison for similarities between the datacan result in a most probable trajectory of motion can be found. In suchexample, the most probable trajectory can be illustrated by the 5^(th)column with the highest NCC value 0.9978 among other comparisons. It canbe seen as well from FIGS. 4H-4I that it was enough to compare only thefirst 24 points from all trajectory (95 points) to obtain the correctvalue regarding the column number.

In particular embodiments, if a similarity correlation method is notproducing a desired level of accuracy within a region, then othercorrelation methods can be used to help improve accuracy. For example,some embodiments may use correlation criteria functions based on thecalculation of a cross correlation function of random processes. Incertain embodiments, the magnetic navigation system may use a differencecriteria function that may be commonly presented in the field. Inparticular embodiments, spectral criteria functions can be used toperform a correlation in a spectral domain. In particular embodiments,any of a variety of functions can be utilized for obtaining geomagneticmap information using magnetic measurements made by a variety ofmagnetic navigation devices as appropriate to the requirements ofspecific applications in particular embodiments.

Referring now to FIGS. 5 through 7, magnetic mapping data sets, inparticular embodiments can be illustrated. FIG. 5 illustrates examplelatitude and longitude trajectory data captured on different days whiletraversing the same or a substantially similar path within a givenregion. It can be illustrated that the overlapping data, illustratedalong the center line of the curve, can be used to generate improvedgeomagnetic map information. In various embodiments, the geomagnetic mapdata can continue to improve with an increasing number of magneticmeasurements from a diversity of magnetic navigation devices within theregion. Although the different data sets shown in FIG. 5 appear to besomewhat shifted relative to each other, the data sets represent thesame path over two different time periods. Conditions can change fromday to day and local anomalies can also change thereby affecting therespective data set. However, the overlapping data sets can be comparedfor similarities, as discussed above, and appropriately determinedweighted coefficients can be applied to the data sets to establishgreater consistency. The magnetic measurements illustrated in FIG. 5 arealso illustrated within the charts shown in FIG. 6. In particular, FIG.6 shows how the magnetic field was changed for trajectories presented inFIG. 5 separately by latitude (indicated by reference number 602) andlongitude (indicated by reference number 604), depending on date (greyand black colors correspondingly). The respective data sets alsodemonstrate slight shifts but are comparable.

FIG. 7 illustrates an example regional geomagnetic map formed based onmagnetic measurements captured by a number of different magneticnavigation devices. The geomagnetic map illustrates correspondingintensities in respective latitude and longitude positions of the map.The greater the number of magnetic navigation devices collectingreliable magnetic measurement information, the greater the amount ofoverlapping data that can be used to generate high resolutiongeomagnetic maps of a respective region. In particular embodiments, amagnetic navigation system can implement the methods and systemsdescribed above to compile magnetic navigation device specific data andcreate a geomagnetic map layer in which similar data can be compared andthus used to generate improved resolution geomagnetic data specific toparticular classes of device. The specific manner in which magneticnavigation systems process magnetic measurements obtained from differentclasses of magnetic navigation devices to obtain updated geomagnetic mapinformation is largely dependent upon the requirements of specificapplications.

Turning now to FIG. 8, a magnetic navigation system 800 is illustrated.In particular embodiments, a specified region 802 may have a number ofmagnetic navigation devices or objects (804-814), such for example asmetal objects, cars, high power lines, subway, etc. Each of therespective magnetic navigation devices (804-808) can transmit magneticmeasurement information, which may include device profile information816 to a regional server 818. The individual magnetic measurements cancontain information regarding the various objects (810-814) within theregion as well as information that may be provided by other magneticnavigation devices. These objects 810-814 may influence the magneticreadings by introducing distortion in GMF. Consequently, the regionalserver can utilize the various correlation methods as described above tocombine magnetic measurements received from different magneticnavigation devices and generate an updated geomagnetic map informationsuch as (but not limited to) a geomagnetic map patch or patches 820 tobe sent to the main server 822. In particular embodiments, the mainserver 822 can combine EMAG data 824 with geomagnetic map patch data togenerate an additional geomagnetic map layer with increased resolutionrelative to the EMAG data 824. As illustrated in FIG. 8, manyembodiments enable the transmission of data in both directions. In otherwords, many embodiments can utilize the system architecture to generategeomagnetic map data 826 as well as provide updated geomagnetic map data826 to end devices (804-808) that are within the region. Differentserver systems can be utilized to receive and process magneticmeasurements into updated geomagnetic information, and to distributegeomagnetic map information to magnetic navigation devices.

FIG. 9 illustrates an example process for updating example geomagneticmap information, in which a geomagnetic map having a higher resolutionthan a baseline set of geomagnetic map information is generated usingmultiple magnetic navigation devices. In the illustrated embodiment, anumber of magnetic navigation devices (1−n) generate magneticmeasurement information based on their presence within given regions(902-906). Each of the regional servers can then receive or share themagnetic measurement information between the servers (908-912). Once themagnetic measurement information has been compiled, the magneticmeasurement information can be merged 914 and used to generate ageomagnetic map patch 916 having a resolution that is greater than theresolution of a baseline dataset of geomagnetic information. Thegeomagnetic map patch can then be transmitted 918 and used to update aglobal geomagnetic map 920. In particular embodiments, the methodillustrated in FIG. 9 can be used for any number of regional servers.

In particular embodiments, magnetic navigation devices can generate,send and receive magnetic measurement information that can be formattedin one of a number of different data formats. FIG. 10 illustratesvarious processes performed within a magnetic navigation system in whicha magnetic navigation device 1002 can communicate with a regional server1004. In particular embodiments the magnetic navigation device 1002 cangenerate magnetic measurement information 1006 based on the region inwhich it is located and the applicable hardware that it has on board togenerate such data. Subsequently, that magnetic measurement informationcan be transmitted 1008 to the regional server 1004 via a wirelessconnection. As can be seen in FIGS. 1A-1B and 12-13, wirelessconnections between magnetic navigation devices and server systemswithin a magnetic navigation system can involve wireless communicationsuch as (but not limited to) communication via a cellular data network,satellite communication link, wireless access point, or other wirelesscommunication channel. Magnetic navigation devices can also requestgeomagnetic map data 1010 (e.g. geomagnetic map tiles) for a givengeographical region in which the device is located. The regional server1004 can, based on the request, transmit the current geomagnetic mapdata 1012 for the region to the magnetic navigation device. As notedabove, the geomagnetic data can be provided in combination with UI maptiles. In particular embodiments, UI map tiles can be obtained fromother servers.

The manner in which magnetic measurements can be made by magneticmeasurement devices can be dependent upon the availability of othersources of localization information or the available networkconnectivity. Various magnetic measurement modes that can be employed bya magnetic navigation device in particular embodiments are illustratedin FIG. 11. Magnetic measurements can be obtained (1102) usingmagnetometers within a magnetic navigation device. The magneticmeasurements can be utilized to generate (1104) magnetic measurementinformation that is transmitted (1105) to a server within the magneticnavigation system (e.g. a regional server). The specific magneticmeasurement information provided can depend upon the availability ofadditional sources of localization information. For example, based onthe available information, an operational mode may be selected ordetermined 1106, such as a normal mode 1107, network-denied mode 1108,blind mode 1110, or GNSS-denied mode 1112. When reliable localizationinformation is available and the magnetic navigation device has accessto a wireless data network, the magnetic navigation device can operatein a normal or regular mode 1107 of operation in which magneticmeasurements are gathered and a combination of magnetic measurements andposition information are transmitted (1105) to the magnetic navigationsystem as the data are acquired. However, if the device does not haveadequate network signal 1108, the data can be gathered and storedlocally for transmission once network connectivity is established in anetwork-denied mode 1108. Similarly, the device can operate in aGNSS-denied 1112 mode, where the device has an inadequate GNSS signal1110. In some embodiments, the device can utilize INS to gather roughdata when reliable GNSS signal is not available. Subsequently, as GNSSsignals become available the magnetic navigation device can initiate atransition between gathering modes or update localization estimatesdetermined using INS or other sources of localization information. Inparticular embodiments, the device may use INS in conjunction with goodnetwork signal, to gather and transmit data to a regional server. Inthose embodiments that lack network signal, data can be transferred tothe regional server once adequate signal become available.

FIG. 12 illustrates a decision-making process 1200 implemented within amagnetic navigation device to determine how to gather and transmitmagnetic measurement information based upon GNSS or communicationnetwork availability. The magnetic navigation device can determinewhether there is an adequate GNSS signal 1202. If not, the magneticnavigation device can then utilize INS localization and dead reckoningto generate localization data 1204. The INS localization data can thenbe stored locally on the device 1205 for transmission when sufficientnetwork signal is obtained. Subsequently, the system or device candetermine if there is network signal 1206 sufficient to transmitmagnetic measurement information including the localization data. Ifthere is, then the data can be transmitted 1208 to the magneticnavigation system servers. If not, then the magnetic measurementinformation can be stored 1210 until a network signal is available.

While specific processes are described above for generating magneticmeasurement information using different sources of localizationinformation, magnetic navigation devices can utilize any of a variety ofprocesses or sources for magnetic or localization information in thegeneration of magnetic measurement information as appropriate to therequirements of specific applications in particular embodiments.

As noted above, geomagnetic maps can be utilized in any number ofapplications to navigate, including land, air, and water. Magneticnavigation devices can utilize geomagnetic maps or additionalinformation regarding the field of magnetic susceptibility and electricconductivity of environmental materials to perform magnetic navigation.The specific manner in which a magnetic navigation device navigates canbe dependent upon the availability of other sources of localizationinformation or network connectivity. When available, magnetic navigationdevices can utilize a GNSS to provide localization information that canbe refined in combination with magnetic measurements or INSmeasurements. When unavailable, the magnetic navigation device can relyupon prior GNSS localization information in combination with INSmeasurements and magnetic measurements. As noted above, the magneticnavigation device utilizes magnetic measurements to provide localizationinformation based upon geomagnetic map information. The magneticnavigation device can store geomagnetic map information. However,magnetic navigation systems in particular embodiments periodicallyupdate geomagnetic map information. Accordingly, magnetic navigationdevices in particular embodiments can attempt to retrieve updatedgeomagnetic map information in order to perform localization ornavigation based upon magnetic measurements. As noted above, GNSSinformation may be unreliable or unavailable in certain regions due tothe surrounding environment (e.g. tall buildings, canyons, etc.). Inparticular embodiments, the geomagnetic map can include informationabout the reliability of GNSS localization information in specificlocations to enable magnetic navigation devices to better reconcilediscrepancies between locations determined based upon GNSS informationand the likelihood of that location being correct based upon magneticfield measurements. Magnetic field measurements can be utilized in anyof a variety of different ways to perform localization in combinationwith additional sources of localization information as appropriate tothe requirements of specific applications in particular embodiments.

As previously noted with respect to generating mapping data, particularembodiments may incorporate similar navigation operational modes. Forexample, if the navigation device has a reliable GNSS connection and areliable cellular network connection it may operate in a normaltransmission mode (e.g. regular mode 1107) by receiving updated magneticmapping tiles or cubes for the given region of operation. Additionally,as magnetic mapping tiles or cubes are transmitted to the navigationdevice, the device can compare magnetic mapping tile/cube data with thatof traditional GNSS data and evaluate the comparison for anydiscrepancies that can be transmitted to a regional server for laterprocessing. Alternatively, if the device has an inadequate GNSSconnection but a sufficient network connection (e.g. GNSS-denied mode1112), many embodiments may rely primarily on geomagnetic mapinformation, including mapping tiles or cubes supplied from the regionalserver for navigational purposes. Particular embodiments may alsoincorporate the use of dead reckoning and INS to augment the magneticmapping data for reliable navigation.

In contrast, some situations may not allow for complete use of GNSS ornetwork connections to navigate using magnetic mapping data. Variousembodiments may allow for continued navigation even with inadequatecellular network signal from which to pull updated magnetic mappingdata. For example, if only GNSS connection is available without areliable cellular network connection (e.g. network-denied mode 1108),some embodiments may continue to operate utilizing previouslytransmitted magnetic mapping data augmented with the current GNSS data.Additionally, INS can be used to generate additional data for deadreckoning. Accordingly, INS, GNSS, and previously downloaded magneticmapping data can be compared for irregularities that can be transmitted,at a later time, to the regional server for use in further improvementof overall magnetic mapping data. Likewise, when some navigation devicesare effectively operating in a blind mode 1110, without reliable GNSS orcellular network connections, INS and previously downloaded magneticmapping data can be used for navigational purposes. The INS and magneticdata, organic to the navigational device, can likewise be used for latertransmission to the regional servers for use in improving the overallmagnetic map for the given region.

FIG. 13 illustrates an example method for navigating based on availablelocalization and network connectivity. In method 1300, the magneticnavigation device can determine 1302 that an adequate GNSS signal isavailable and proceed with obtaining localization information andrequesting any available updated geomagnetic map information. When theGNSS signal is unavailable, the magnetic navigation device can use 1304measurements made by an IMU or other sources of localization informationto estimate position in combination with magnetic measurements.

When the magnetic navigation device attempts to retrieve updatedgeomagnetic information, the magnetic navigation device can determine1306 whether a network connection is available. When a networkconnection is available, the magnetic navigation device can request and(when available) obtain updated geomagnetic map information. Inparticular embodiments, the geomagnetic map information for a particularregion is provided in the form of geomagnetic map tiles 1308.Geomagnetic map information can be provided in any of a variety offormats as appropriate to the requirements of specific applications inparticular embodiments. When a network connection is unavailable,localization or navigation can proceed 1310 using pre-cached geomagneticmap information (e.g. geomagnetic map tiles). In various embodiments,magnetic measurements can be processed using the geomagnetic mapinformation to perform localization and compared to the positionestimate generated using any combination of GNSS, INS, or other sourcesof localization data. The comparison can be evaluated for discrepanciesand then further refined. In particular embodiments, geomagnetic mapinformation can include indications of regions in which GNSS signals areunreliable and likely to produce incorrect position estimates.Accordingly, the geomagnetic map information can assist with resolvingdiscrepancies. The magnetic navigation device can also use suchinformation to process INS data to perform dead reckoning based uponprevious reliable GNSS information (potentially ignoring more recent,but less reliable GNSS information).

If there is not sufficient network connectivity to obtain geomagneticmap information, the magnetic navigation device can perform localizationor mapping in a conventional manner using GNSS information. However, themagnetic navigation device can continue to make magnetic measurementsand can provide magnetic measurement information based upon thesemeasurements and localization information derived from sources includingthe GNSS information to the magnetic navigation system for the purposesof updating a global geomagnetic map. In some embodiments, geomagneticmap information can be later downloaded and the information utilized todetermine localization information in combination with GNSS data todetermine the most accurate position information to utilized within themagnetic measurement information provided to the magnetic navigationsystem by the magnetic navigation device.

In particular embodiments, navigation techniques, as described above,can be performed regardless of the location of the device within theregion. For example, in traditional GNSS systems, local anomalies canact as blockers for signals to the device. However, since manyembodiments factor in the magnetic susceptibility and conductivity ofthe local anomalies, and the system is based on stable magnetic mappingdata, many embodiments can function in and around the local anomalies.This holds true for interior navigation of buildings. In someembodiments, the system can provide navigational tools for accuratelynavigating within buildings as well as around them. Additionally, thelandscape of the buildings can be more accurately mapped the more thesystem is used in and around the local anomalies.

In particular embodiments, navigation techniques, similar to thosedescribed above can be augmented by using isolines for navigation overrough mapping data. Isolines can be referred to as lines of equal valuesof a magnetic field or its gradients on a map. In particularembodiments, the navigation techniques can use isolines to control anobject by utilizing errors of deviation values from the isoline or a setof isolines (similar to controlling of an aircraft by line-of-positionfrom radio beacon) in relation to the navigation device.

Magnetic mapping data can be used for a variety of systems and methodsin particular embodiments described herein. For example, someembodiments may be designed for use in a search and rescue or emergencyresponse type mission that would allow searchers to capitalize on themagnetic mapping data from their own device as well as that from thosein need to triangulate positioning and mapping the best course of actionfor executing the rescue. Other embodiments could be used to augmentexisting navigational applications to help improve the navigationthrough tunnels or underground passages. For example, mining operationscan benefit from improved magnetic mapping systems for improving thesafety of the workers through reliable localization. Additionally, manyembodiments can be used for improved navigation and localizing deviceswithin buildings. For example, systems and methods described herein canbe used to aid device users in navigating buildings such as apartmentcomplexes, businesses, or industrial localization. In some embodimentsthe system can build magnetic maps and magnetic mapping data for suchlocalization using Gaussian Process Regression (GPR) which can eliminatethe need for precise floor measurements in such close quarterslocalization. FIGS. 14A-14D illustrate example magnetic data forimproved localization, showing overlaying input and predicted data setsthat can generate an extrapolated magnetic map for localization. Inparticular, charts 1402-1416 depicted in FIGS. 14A-14D illustratevisualization of magnetic field, where different intensities of magneticfield are represented by different colors. The X and Y axis in thesecharts are reference directions of some coordinate system (e.g., ENUcoordinate system) in metric units. In the first chart 1402, input dataare magnetic values measured along the random trajectories with theknown localization in XY axis. As can be seen by the first chart 1402,only ⅙ of area covered by measurements. Chart 1404 shows the sametrajectories for latitude-longitude axes. Charts 1406-1416 represent theprocess of filling the map patch with magnetic field providing thedifferent combination of interpolation between empty areas. Inparticular, chart 1408 represents visualization of magnetic field withradius of reliable localization, without interpolation; chart 1410 showsthe filling of the whole patch based on GPR, without radius; chart 1412represents visualization of magnetic filled both from GPR interpolationand from real input data; chart 1414 shows the filling of the wholepatch based on GPR, with taking into account of radius of reliablelocalization; and finally chart 1416 represents visualization ofmagnetic filled both from GPR interpolation and from real input data,taking into account radius of reliable localization. Similar embodimentscan be incorporated into use with autonomous robots or drones, which canbe used in a number of different circumstances.

Other embodiments of the magnetic mapping or navigation systems can beused in numerous outdoor environments including, but not limited to,GNSS deprived environments. For example, various embodiments mayincorporate a trace back function. Such functions can be useful forrobotic or remote-controlled devices that are navigating to a specificlocation. In the event that the device loses line of sight with thecontrol unit, it could utilize stored or previously used magneticmapping data to retrace a path back to the control unit without the needfor line of sight or a reliable GNSS or network connection. Likewise,many such embodiments can be used in a variety of applications in whichthere is limited GNSS or network connectivity. For example, as mentionedabove, embodiments can be used to augment other mapping applications toallow for reliable localization in remote locations or other locationswith poor connectivity. For example, FIG. 15 illustrates a set ofmagnetic mapping data 1502 for a given device along a predeterminedtrajectory 1504 on a first day (e.g. 11 May 2020) and a second day (e.g.14 May 2020). Specifically, FIG. 15 demonstrates that the magneticmeasurements made on different days or times are repeatable fornavigation and mapping purposes. Saved data can be used and reused inparticular embodiments to allow for continued and reliable localizationwhen connectivity can be interrupted.

Other embodiments can be incorporated at a smaller scale for a varietyof different uses. For example, an individual may define a given area asthe “desired region” of operation. The desired region of operation canbe established with geomagnetic fencing elements such that a knowndevice can be “fenced” in or kept out of a desired region. Some examplesinclude dog collars that can be used on a particular parcel of land orwithin a particular region of a city. In some embodiments, the dogcollar or localization device can be designed to prevent movement beyonda defined area or prevent function beyond said area. Other examples mayinclude a secure area in which cellular devices, as an example, may posean undue risk. Additionally, that alerts can be used to notify otherdevices of movement within, close to, and beyond the desired region.

Many systems and methods described herein can also be useful in areasthat experience high levels of interference with various anomalies ordiminished connectivity. For example, many marine type vehicles,especially submersibles, may need more reliable localization systems.Accordingly, magnetic mapping and navigation systems, particularembodiments, can be used in submersibles such as military or scienceexploration vehicles. Additionally, many such devices may utilizesecondary equipment that operate such as remotely operated devices orprojectiles that likewise may require reliable localization forguidance. Accordingly, particular embodiments can be adapted for use insuch devices as primary localization or an augmented localizationsystem.

Many other applications can be appreciated given the reliability ofembodiments of the magnetic mapping and localization systems describedhere. For example, because many embodiments can operate without adequateGNSS or network connections, some systems may be adapted for aleader/follower configuration. The leader may be a device that passesthrough a particular region that may have poor connectivity (dead zone).During the movement, the leader device generates magnetic mapping datathat can be used for generating trajectories and rough mapping data.Such data can then be transmitted to a follower device prior to enteringthe dead zone and then utilize the data from the leader device tosuccessfully navigate the dead zone. Additionally, each follower devicecan generate follower data to be transmitted that can be used to improvethe magnetic mapping tiles that can be transmitted to other followerdevices.

Moreover, as discussed previously with respect to extrapolating varioustwo dimensional data sets to generate a three dimensional data set, somesystems can be adapted for use in a ground-air localization technique.For example, a ground based device can be used to generate magneticmapping data that can subsequently be extrapolated upwards to generatethree dimensional mapping cubes. The three dimensional mapping cubeswould then contain altitude data that could be used by an air baseddevice for air localization/navigation through a particular region.

The concepts herein can be implemented in a variety of arrangements inparticular. For example, a navigation system and methods for using suchwhere a continuously updated magnetic mapping system compares individualregional device profiles to generate new mapping tiles. Achieving suchfunctionality, according to embodiments, involves the implementation ofspecial arrangements or designs between subsystems described above, andtheir equivalents.

FIG. 16 illustrates an example computer system 1600. In particularembodiments, one or more computer systems 1600 perform one or more stepsof one or more methods described or illustrated herein. In particularembodiments, computer system 1600 may be a computing system or deviceassociated with a magnetic navigation device 110, a regional data server112, or a main mapping server 116. In particular embodiments, one ormore computer systems 1600 provide functionality described orillustrated herein. In particular embodiments, software running on oneor more computer systems 1600 performs one or more steps of one or moremethods described or illustrated herein or provides functionalitydescribed or illustrated herein. Particular embodiments include one ormore portions of one or more computer systems 1600. Herein, reference toa computer system may encompass a computing device, and vice versa,where appropriate. Moreover, reference to a computer system mayencompass one or more computer systems, where appropriate.

This disclosure contemplates any suitable number of computer systems1600. This disclosure contemplates computer system 1600 taking anysuitable physical form. As example and not by way of limitation,computer system 1600 may be an embedded computer system, asystem-on-chip (SOC), a single-board computer system (SBC) (such as, forexample, a computer-on-module (COM) or system-on-module (SOM)), adesktop computer system, a laptop or notebook computer system, aninteractive kiosk, a mainframe, a mesh of computer systems, a mobiletelephone, a personal digital assistant (PDA), a server, a tabletcomputer system, an augmented/virtual reality device, or a combinationof two or more of these. Where appropriate, computer system 1600 mayinclude one or more computer systems 1600; be unitary or distributed;span multiple locations; span multiple machines; span multiple datacenters; or reside in a cloud, which may include one or more cloudcomponents in one or more networks. Where appropriate, one or morecomputer systems 1600 may perform without substantial spatial ortemporal limitation one or more steps of one or more methods describedor illustrated herein. As an example and not by way of limitation, oneor more computer systems 1600 may perform in real time or in batch modeone or more steps of one or more methods described or illustratedherein. One or more computer systems 1600 may perform at different timesor at different locations one or more steps of one or more methodsdescribed or illustrated herein, where appropriate.

In particular embodiments, computer system 1600 includes a processor1602, memory 1604, storage 1606, an input/output (I/O) interface 1608, acommunication interface 1610, and a bus 1612. Although this disclosuredescribes and illustrates a particular computer system having aparticular number of particular components in a particular arrangement,this disclosure contemplates any suitable computer system having anysuitable number of any suitable components in any suitable arrangement.

In particular embodiments, processor 1602 includes hardware forexecuting instructions, such as those making up a computer program. Asan example and not by way of limitation, to execute instructions,processor 1602 may retrieve (or fetch) the instructions from an internalregister, an internal cache, memory 1604, or storage 1606; decode andexecute them; and then write one or more results to an internalregister, an internal cache, memory 1604, or storage 1606. In particularembodiments, processor 1602 may include one or more internal caches fordata, instructions, or addresses. This disclosure contemplates processor1602 including any suitable number of any suitable internal caches,where appropriate. As an example and not by way of limitation, processor1602 may include one or more instruction caches, one or more datacaches, and one or more translation lookaside buffers (TLBs).Instructions in the instruction caches may be copies of instructions inmemory 1604 or storage 1606, and the instruction caches may speed upretrieval of those instructions by processor 1602. Data in the datacaches may be copies of data in memory 1604 or storage 1606 forinstructions executing at processor 1602 to operate on; the results ofprevious instructions executed at processor 1602 for access bysubsequent instructions executing at processor 1602 or for writing tomemory 1604 or storage 1606; or other suitable data. The data caches mayspeed up read or write operations by processor 1602. The TLBs may speedup virtual-address translation for processor 1602. In particularembodiments, processor 1602 may include one or more internal registersfor data, instructions, or addresses. This disclosure contemplatesprocessor 1602 including any suitable number of any suitable internalregisters, where appropriate. Where appropriate, processor 1602 mayinclude one or more arithmetic logic units (ALUs); be a multi-coreprocessor; or include one or more processors 1602. Although thisdisclosure describes and illustrates a particular processor, thisdisclosure contemplates any suitable processor.

In particular embodiments, memory 1604 includes main memory for storinginstructions for processor 1602 to execute or data for processor 1602 tooperate on. As an example and not by way of limitation, computer system1600 may load instructions from storage 1606 or another source (such as,for example, another computer system 1600) to memory 1604. Processor1602 may then load the instructions from memory 1604 to an internalregister or internal cache. To execute the instructions, processor 1602may retrieve the instructions from the internal register or internalcache and decode them. During or after execution of the instructions,processor 1602 may write one or more results (which may be intermediateor final results) to the internal register or internal cache. Processor1602 may then write one or more of those results to memory 1604. Inparticular embodiments, processor 1602 executes only instructions in oneor more internal registers or internal caches or in memory 1604 (asopposed to storage 1606 or elsewhere) and operates only on data in oneor more internal registers or internal caches or in memory 1604 (asopposed to storage 1606 or elsewhere). One or more memory buses (whichmay each include an address bus and a data bus) may couple processor1602 to memory 1604. Bus 1612 may include one or more memory buses, asdescribed below. In particular embodiments, one or more memorymanagement units (MMUs) reside between processor 1602 and memory 1604and facilitate accesses to memory 1604 requested by processor 1602. Inparticular embodiments, memory 1604 includes random access memory (RAM).This RAM may be volatile memory, where appropriate. Where appropriate,this RAM may be dynamic RAM (DRAM) or static RAM (SRAM). Moreover, whereappropriate, this RAM may be single-ported or multi-ported RAM. Thisdisclosure contemplates any suitable RAM. Memory 1604 may include one ormore memories 1604, where appropriate. Although this disclosuredescribes and illustrates particular memory, this disclosurecontemplates any suitable memory.

In particular embodiments, storage 1606 includes mass storage for dataor instructions. As an example and not by way of limitation, storage1606 may include a hard disk drive (HDD), a floppy disk drive, flashmemory, an optical disc, a magneto-optical disc, magnetic tape, or aUniversal Serial Bus (USB) drive or a combination of two or more ofthese. Storage 1606 may include removable or non-removable (or fixed)media, where appropriate. Storage 1606 may be internal or external tocomputer system 1600, where appropriate. In particular embodiments,storage 1606 is non-volatile, solid-state memory. In particularembodiments, storage 1606 includes read-only memory (ROM). Whereappropriate, this ROM may be mask-programmed ROM, programmable ROM(PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM),electrically alterable ROM (EAROM), or flash memory or a combination oftwo or more of these. This disclosure contemplates mass storage 1606taking any suitable physical form. Storage 1606 may include one or morestorage control units facilitating communication between processor 1602and storage 1606, where appropriate. Where appropriate, storage 1606 mayinclude one or more storages 1606. Although this disclosure describesand illustrates particular storage, this disclosure contemplates anysuitable storage.

In particular embodiments, I/O interface 1608 includes hardware,software, or both, providing one or more interfaces for communicationbetween computer system 1600 and one or more I/O devices. Computersystem 1600 may include one or more of these I/O devices, whereappropriate. One or more of these I/O devices may enable communicationbetween a person and computer system 1600. As an example and not by wayof limitation, an I/O device may include a keyboard, keypad, microphone,monitor, mouse, printer, scanner, speaker, still camera, stylus, tablet,touch screen, trackball, video camera, another suitable I/O device or acombination of two or more of these. An I/O device may include one ormore sensors. This disclosure contemplates any suitable I/O devices andany suitable I/O interfaces 1608 for them. Where appropriate, I/Ointerface 1608 may include one or more device or software driversenabling processor 1602 to drive one or more of these I/O devices. I/Ointerface 1608 may include one or more I/O interfaces 1608, whereappropriate. Although this disclosure describes and illustrates aparticular I/O interface, this disclosure contemplates any suitable I/Ointerface.

In particular embodiments, communication interface 1610 includeshardware, software, or both providing one or more interfaces forcommunication (such as, for example, packet-based communication) betweencomputer system 1600 and one or more other computer systems 1600 or oneor more networks. As an example and not by way of limitation,communication interface 1610 may include a network interface controller(NIC) or network adapter for communicating with an Ethernet or otherwire-based network or a wireless NIC (WNIC) or wireless adapter forcommunicating with a wireless network, such as a WI-FI network. Thisdisclosure contemplates any suitable network and any suitablecommunication interface 1610 for it. As an example and not by way oflimitation, computer system 1600 may communicate with an ad hoc network,a personal area network (PAN), a local area network (LAN), a wide areanetwork (WAN), a metropolitan area network (MAN), or one or moreportions of the Internet or a combination of two or more of these. Oneor more portions of one or more of these networks may be wired orwireless. As an example, computer system 1600 may communicate with awireless PAN (WPAN) (such as, for example, a BLUETOOTH WPAN), a WI-FInetwork, a WI-MAX network, a cellular telephone network (such as, forexample, a Global System for Mobile Communications (GSM) network), orother suitable wireless network or a combination of two or more ofthese. Computer system 1600 may include any suitable communicationinterface 1610 for any of these networks, where appropriate.Communication interface 1610 may include one or more communicationinterfaces 1610, where appropriate. Although this disclosure describesand illustrates a particular communication interface, this disclosurecontemplates any suitable communication interface.

In particular embodiments, bus 1612 includes hardware, software, or bothcoupling components of computer system 1600 to each other. As an exampleand not by way of limitation, bus 1612 may include an AcceleratedGraphics Port (AGP) or other graphics bus, an Enhanced Industry StandardArchitecture (EISA) bus, a front-side bus (FSB), a HYPERTRANSPORT (HT)interconnect, an Industry Standard Architecture (ISA) bus, an INFINIBANDinterconnect, a low-pin-count (LPC) bus, a memory bus, a Micro ChannelArchitecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, aPCI-Express (PCIe) bus, a serial advanced technology attachment (SATA)bus, a Video Electronics Standards Association local (VLB) bus, oranother suitable bus or a combination of two or more of these. Bus 1612may include one or more buses 1612, where appropriate. Although thisdisclosure describes and illustrates a particular bus, this disclosurecontemplates any suitable bus or interconnect.

Herein, a computer-readable non-transitory storage medium or media mayinclude one or more semiconductor-based or other integrated circuits(ICs) (such, as for example, field-programmable gate arrays (FPGAs) orapplication-specific ICs (ASICs)), hard disk drives (HDDs), hybrid harddrives (HHDs), optical discs, optical disc drives (ODDs),magneto-optical discs, magneto-optical drives, floppy diskettes, floppydisk drives (FDDs), magnetic tapes, solid-state drives (SSDs),RAM-drives, SECURE DIGITAL cards or drives, any other suitablecomputer-readable non-transitory storage media, or any suitablecombination of two or more of these, where appropriate. Acomputer-readable non-transitory storage medium may be volatile,non-volatile, or a combination of volatile and non-volatile, whereappropriate.

Herein, “or” is inclusive and not exclusive, unless expressly indicatedotherwise or indicated otherwise by context. Therefore, herein, “A or B”means “A, B, or both,” unless expressly indicated otherwise or indicatedotherwise by context. Moreover, “and” is both joint and several, unlessexpressly indicated otherwise or indicated otherwise by context.Therefore, herein, “A and B” means “A and B, jointly or severally,”unless expressly indicated otherwise or indicated otherwise by context.

The scope of this disclosure encompasses all changes, substitutions,variations, alterations, and modifications to the example embodimentsdescribed or illustrated herein that a person having ordinary skill inthe art would comprehend. The scope of this disclosure is not limited tothe example embodiments described or illustrated herein. Moreover,although this disclosure describes and illustrates respectiveembodiments herein as including particular components, elements,feature, functions, operations, or steps, any of these embodiments mayinclude any combination or permutation of any of the components,elements, features, functions, operations, or steps described orillustrated anywhere herein that a person having ordinary skill in theart would comprehend. Furthermore, reference in the appended claims toan apparatus or system or a component of an apparatus or system beingadapted to, arranged to, capable of, configured to, enabled to, operableto, or operative to perform a particular function encompasses thatapparatus, system, component, whether or not it or that particularfunction is activated, turned on, or unlocked, as long as thatapparatus, system, or component is so adapted, arranged, capable,configured, enabled, operable, or operative. Additionally, the scope ofthis disclosure encompasses all advantages of the example embodimentsdescribed or illustrated herein that a person having ordinary skill inthe art would comprehend. The scope of this disclosure is not limited tothe particular advantages specifically described or illustrated herein.

What is claimed is:
 1. A method comprising: collecting, by a magnetic navigation device, magnetic measurements of a particular geographical region in accordance with a position and trajectory of the magnetic navigation device; accessing a global navigation satellite system (GNSS) signal status and a network connection status on the magnetic navigation device; determining an operational mode for the magnetic navigation device based on the GNSS signal status and the network connection status; determining whether to transmit the magnetic measurements to a server or store the magnetic measurements locally on the magnetic navigation device based on the operational mode; and performing navigation or localization operations using the operational mode.
 2. The method of claim 1, wherein the operational mode is: regular mode; GNSS-denied mode; network-denied mode; or blind mode.
 3. The method of claim 2, wherein: the operational mode for the magnetic navigation device is regular mode when the magnetic navigation device has a reliable GNSS signal and reliable network connectivity; and when the magnetic navigation device operates in regular mode, the magnetic navigation device is operable to: transmit the magnetic measurements to the server to update geomagnetic map data; and perform navigation or localization operations using the GNSS signal.
 4. The method of claim 3, further comprising: downloading an updated geomagnetic map to the magnetic navigation device; navigating using the GNSS signal, inertial navigation systems (INS) measurements, and the updated geomagnetic map; comparing navigation results from the GNSS signal, the INS measurements, and the updated geomagnetic map; and transmitting the navigation results or the comparison to the server to update the geomagnetic map data.
 5. The method of claim 1, wherein: the operational mode for the magnetic navigation device is GNSS-denied mode when the magnetic navigation device has an unreliable GNSS signal and reliable network connectivity; and when the magnetic navigation device operates in GNSS-denied mode, the magnetic navigation device is operable to: transmit the magnetic measurements to the server to update geomagnetic map data; download updated geomagnetic map data from the server to the magnetic navigation device; and perform navigation or localization operations using one or more of inertial navigation systems (INS) measurements or the updated geomagnetic map data.
 6. The method of claim 1, wherein: the operational mode for the magnetic navigation device is network-denied mode when the magnetic navigation device has a reliable GNSS signal but unreliable network connectivity; and when the magnetic navigation device operates in network-denied mode, the magnetic navigation device is operable to: store the magnetic measurements in a memory of the magnetic navigation device for later transmission to the server; and perform navigation or localization operations using the GNSS signal.
 7. The method of claim 1, wherein: the operational mode for the magnetic navigation device is blind mode when the magnetic navigation device has an unreliable GNSS signal and unreliable network connectivity; and when the magnetic navigation device operates in blind mode, the magnetic navigation device is operable to: store the magnetic measurements in a memory of the magnetic navigation device for later transmission to the server; and perform navigation or localization operations using one or more of inertial navigation systems (INS) measurements or current geomagnetic map data stored in the memory of the magnetic navigation device.
 8. The method of claim 1, wherein the magnetic navigation device comprises: a processing system; a magnetic sensor system; a global navigation satellite system (GNSS) receiver; an inertial navigation system (INS); a wireless module; and a memory operable to store a magnetic navigation application, geomagnetic map information, and user interface (UI) map information.
 9. The method of claim 1, wherein the magnetic navigation device is a mobile phone, an automotive navigation system, a marine navigation system, or an aerial navigation system.
 10. The method of claim 1, wherein the server is a mapping server or a regional server.
 11. One or more computer-readable non-transitory storage media embodying software that is operable when executed to: collect, by a magnetic navigation device, magnetic measurements of a particular geographical region in accordance with a position and trajectory of the magnetic navigation device; access a global navigation satellite system (GNSS) signal status and a network connection status on the magnetic navigation device; determine an operational mode for the magnetic navigation device based on the GNSS signal status and the network connection status; determine whether to transmit the magnetic measurements to a server or store the magnetic measurements locally on the magnetic navigation device based on the operational mode; and perform navigation or localization operations using the operational mode.
 12. The media of claim 11, wherein the operational mode is: regular mode; GNSS-denied mode; network-denied mode; or blind mode.
 13. The media of claim 12, wherein: the operational mode for the magnetic navigation device is regular mode when the magnetic navigation device has a reliable GNSS signal and reliable network connectivity; and when the magnetic navigation device operates in regular mode, the software is operable when executed to: transmit the magnetic measurements to the server to update geomagnetic map data; and perform navigation or localization operations using the GNSS signal.
 14. The media of claim 13, wherein the software is further operable to: download an updated geomagnetic map to the magnetic navigation device; navigate using the GNSS signal, inertial navigation systems (INS) measurements, and the updated geomagnetic map; compare navigation results from the GNSS signal, the INS measurements, and the updated geomagnetic map; and transmit the navigation results or the comparison to the server to update the geomagnetic map data.
 15. The media of claim 11, wherein: the operational mode for the magnetic navigation device is GNSS-denied mode when the magnetic navigation device has an unreliable GNSS signal and reliable network connectivity; and when the magnetic navigation device operates in GNSS-denied mode, the software is operable when executed to: transmit the magnetic measurements to the server to update geomagnetic map data; download updated geomagnetic map data from the server to the magnetic navigation device; and perform navigation or localization operations using one or more of inertial navigation systems (INS) measurements or the updated geomagnetic map data.
 16. The media of claim 11, wherein: the operational mode for the magnetic navigation device is network-denied mode when the magnetic navigation device has a reliable GNSS signal but unreliable network connectivity; and when the magnetic navigation device operates in network-denied mode, the software is operable when executed to: store the magnetic measurements in a memory of the magnetic navigation device for later transmission to the server; and perform navigation or localization operations using the GNSS signal.
 17. The media of claim 11, wherein: the operational mode for the magnetic navigation device is blind mode when the magnetic navigation device has an unreliable GNSS signal and unreliable network connectivity; and when the magnetic navigation device operates in blind mode, the software is operable when executed to: store the magnetic measurements in a memory of the magnetic navigation device for later transmission to the server; and perform navigation or localization operations using one or more of inertial navigation systems (INS) measurements or current geomagnetic map data stored in the memory of the magnetic navigation device.
 18. The media of claim 11, wherein the magnetic navigation device comprises: a processing system; a magnetic sensor system; a global navigation satellite system (GNSS) receiver; an inertial navigation system (INS); a wireless module; and a memory operable to store a magnetic navigation application, geomagnetic map information, and user interface (UI) map information.
 19. The media of claim 11, wherein the magnetic navigation device is a mobile phone, an automotive navigation system, a marine navigation system, or an aerial navigation system.
 20. The media of claim 11, wherein the server is a mapping server or a regional server.
 21. A system comprising: one or more processors; and one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to: collect, by a magnetic navigation device, magnetic measurements of a particular geographical region in accordance with a position and trajectory of the magnetic navigation device; access a global navigation satellite system (GNSS) signal status and a network connection status on the magnetic navigation device; determine an operational mode for the magnetic navigation device based on the GNSS signal status and the network connection status; determine whether to transmit the magnetic measurements to a server or store the magnetic measurements locally on the magnetic navigation device based on the operational mode; and perform navigation or localization operations using the operational mode.
 22. The system of claim 21, wherein the operational mode is: regular mode; GNSS-denied mode; network-denied mode; or blind mode.
 23. The system of claim 22, wherein: the operational mode for the magnetic navigation device is regular mode when the magnetic navigation device has a reliable GNSS signal and reliable network connectivity; and when the magnetic navigation device operates in regular mode, the instructions are operable when executed by one or more of the processors to cause the system to: transmit the magnetic measurements to the server to update geomagnetic map data; and perform navigation or localization operations using the GNSS signal.
 24. The system of claim 23, wherein the instructions are further operable when executed by one or more of the processors to cause the system to: download an updated geomagnetic map to the magnetic navigation device; navigate using the GNSS signal, inertial navigation systems (INS) measurements, and the updated geomagnetic map; compare navigation results from the GNSS signal, the INS measurements, and the updated geomagnetic map; and transmit the navigation results or the comparison to the server to update the geomagnetic map data.
 25. The system of claim 21, wherein: the operational mode for the magnetic navigation device is GNSS-denied mode when the magnetic navigation device has an unreliable GNSS signal and reliable network connectivity; and when the magnetic navigation device operates in GNSS-denied mode, the instructions are operable when executed by one or more of the processors to cause the system to: transmit the magnetic measurements to the server to update geomagnetic map data; download updated geomagnetic map data from the server to the magnetic navigation device; and perform navigation or localization operations using one or more of inertial navigation systems (INS) measurements or the updated geomagnetic map data.
 26. The system of claim 21, wherein: the operational mode for the magnetic navigation device is network-denied mode when the magnetic navigation device has a reliable GNSS signal but unreliable network connectivity; and when the magnetic navigation device operates in network-denied mode, the instructions are operable when executed by one or more of the processors to cause the system to: store the magnetic measurements in a memory of the magnetic navigation device for later transmission to the server; and perform navigation or localization operations using the GNSS signal.
 27. The system of claim 21, wherein: the operational mode for the magnetic navigation device is blind mode when the magnetic navigation device has an unreliable GNSS signal and unreliable network connectivity; and when the magnetic navigation device operates in blind mode, the software is operable when executed to: store the magnetic measurements in a memory of the magnetic navigation device for later transmission to the server; and perform navigation or localization operations using one or more of inertial navigation systems (INS) measurements or current geomagnetic map data stored in the memory of the magnetic navigation device.
 28. The system of claim 21, wherein the magnetic navigation device comprises: a processing system; a magnetic sensor system; a global navigation satellite system (GNSS) receiver; an inertial navigation system (INS); a wireless module; and a memory operable to store a magnetic navigation application, geomagnetic map information, and user interface (UI) map information.
 29. The system of claim 21, wherein the magnetic navigation device is a mobile phone, an automotive navigation system, a marine navigation system, or an aerial navigation system.
 30. The system of claim 21, wherein the server is a mapping server or a regional server.
 31. A system comprising: means for collecting, by a magnetic navigation device, magnetic measurements of a particular geographical region in accordance with a position and trajectory of the magnetic navigation device; means for accessing a global navigation satellite system (GNSS) signal status and a network connection status on the magnetic navigation device; means for determining an operational mode for the magnetic navigation device based on the GNSS signal status and the network connection status; means for determining whether to transmit the magnetic measurements to a server or store the magnetic measurements locally on the magnetic navigation device based on the operational mode; and means for performing navigation or localization operations using the operational mode. 